package com.fpd.model.vo;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @desc 源数据
 * @author wujiangbo
 * @date 2019年11月12日 上午9:20:05
 */
@Data
@ApiModel
public class MetadataVO {

	private String id;

	@ApiModelProperty(value = "合同号")
	private String contractNumber;// 合同号
	@ApiModelProperty(value = "客户号")
	private String custNo;// 客户号
	@ApiModelProperty(value = "姓名")
	private String custName;// 姓名

	@ApiModelProperty(value = "身份证号")
	private String custIdNumber;// 身份证号
	@ApiModelProperty(value = "联系方式")
	private String phoneNumber;// 手机号码
	@ApiModelProperty(value = "邮箱")
	private String email;// 邮箱
	@ApiModelProperty(value = "逾期金额")
	private BigDecimal yuqiAmount;// 逾期金额
	@ApiModelProperty(value = "逾期天数")
	private int yuqiDay;// 逾期天数

	private int age;// 年龄
	@ApiModelProperty(value = "开始委案日期")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date beginTimeCase;// 开始委案日期
	@ApiModelProperty(value = "委托方")
	private String thirdParty;// 委托方
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "出生日期")
	private Date birthday;// 出生日期
	@ApiModelProperty(value = "户籍地址")
	private String registerAddress;// 详细户籍地址
	@ApiModelProperty(value = "居住地址")
	private String liveAddress;// 详细居住地址
	@ApiModelProperty(value = "单位名称")
	private String unitName;// 公司名称
	@ApiModelProperty(value = "划扣银行卡号")
	private String bankNumber;// 划扣银行卡号
	@ApiModelProperty(value = "划扣银行名称")
	private String bankName;// 划扣银行


	private String custSex;// 性别（0：男；1：女；2：保密）
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createTime;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date updateTime;

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date takeBackPlanTime;// 计划收回日期
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date contractApplyTime;// 合同申请日期
	private BigDecimal loanAmount;// 贷款总额
	private BigDecimal firstPayAmount;// 首付金额
	private int loanPeriod;// 期数
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date paymentDueDay;// 到期还款日
	private BigDecimal totalDebt;// 欠款总额
	private String productName;// 产品名称
	private String product;// 产品?????????
	private String productModel;// 产品型号
	private String productType;// 产品类型
	private String goodsDetails;// 商品详情
	private String store;// 商户名称
	private String storeAddress;// 商户地址

	private BigDecimal leftTotalDebt;// 剩余总欠款
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date contractValidTime;// 合同生效日期
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date firstRepaymentTime;// 合同首次应还款日期
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date cancelTime;// 取消分期日期


	private BigDecimal cancelBeforeRepaymentAmount;// 取消分期前每月正常还款金额
	private BigDecimal qikuanAmount;// 期款金额????
	private BigDecimal zhinajin;// 滞纳金???
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date recentlyRepaymentTime;// 最近一次还款时间
	private BigDecimal recentlyRepaymentAmount;// 最近一次还款金额
	private int hasBackNumber;// 已还期数
	private BigDecimal totalRepaymentAmount;// 累计还款金额????
	private int contractNum;// 客户现行合同数量????
	private String loanType;// 贷款类型???
	private BigDecimal leftQikuan;// 剩余期款????
	private BigDecimal leftZhinajin;// 剩余滞纳金???
	private BigDecimal leftMoney;// 剩余本金
	private String registerPostcode;// 户籍邮编
	private String registerProvince;// 户籍省份
	private String registerCity;// 户籍城市
	private String registerTown;// 户籍城镇
	private String registerVillages;// 户籍村镇
	private String registerStreet;// 户籍街道
	private String registerBuildingNo;// 户籍楼号
	private String registerHouseNo;// 户籍门牌号

	private String livePostcode;// 现居邮编
	private String liveProvince;// 现居省
	private String liveCity;// 现居城市
	private String liveTown;// 现居城镇
	private String liveVillages;// 现居村镇
	private String liveStreet;// 现居街道
	private String liveBuildingNo;// 现居楼号
	private String liveHouseNo;// 现居门牌号

	private String unitPostcode;// 公司邮编
	private String unitProvince;// 公司省
	private String unitCity;// 公司市
	private String unitTown;// 公司城镇
	private String unitVillages;// 公司村镇
	private String unitStreet;// 公司街道
	private String unitBuildingNo;// 公司楼号
	private String unitHouseNo;// 公司门牌号

	private String unitAddress;// 详细工作地址


	private String fatherName;// 父亲姓名
	private String fatherPhone;// 父亲电话
	private String fatherHomePhone;// 父亲家庭电话
	private String fatherWorkPhone;// 父亲工作电话
	private String motherName;// 母亲姓名
	private String motherPhone;// 母亲电话
	private String caseNo;//案件号
	private Date arbitrationDate;//申请仲裁日期
	private Date rulingDate;//裁决日期
	private String motherHomePhone;// 母亲家庭电话
	private String motherWorkPhone;// 母亲工作电话
	private String spouseName;// 配偶姓名
	private String spousePhone;// 配偶手机号
	private String spouseHomePhone;// 配偶家庭电话
	private String spouseWorkPhone;// 配偶工作电话
	private String childrenName;// 子女姓名
	private String childrenPhone;// 子女手机号
	private String childrenHomePhone;// 子女家庭电话
	private String childrenWorkPhone;// 子女工作电话
	private String brotherName;// 兄弟姓名
	private String brotherPhone;// 兄弟电话
	private String brotherHomePhone;// 兄弟家庭电话
	private String brotherWorkPhone;// 兄弟工作电话
	private String sisterName;// 姐妹姓名
	private String sisterPhone;// 姐妹电话
	private String sisterHomePhone;// 姐妹家庭电话
	private String sisterWorkPhone;// 姐妹工作电话
	private String friendName;// 朋友姓名
	private String friendPhone;// 朋友电话
	private String colleagueName;// 同事姓名
	private String colleaguePhone;// 同事电话
	private String otherLinkName;// 其他联系人名称
	private String otherLinkPhone;// 其他联系人电话
	private String otherRelativeName;// 其他亲属名称
	private String otherRelativePhone;// 其他亲属手机号
	private String otherRelativeHomePhone;// 其他亲属家庭电话
	private String otherRelativeWorkPhone;// 其他亲属工作电话
	private String thirdName;// 第三方联系人名称
	private String thirdPhone;// 第三方联系人手机号
	private String thirdHomePhone;// 第三方联系人家庭电话
	private String thirdWorkPhone;// 第三方联系人工作电话
	private String otherName;// 其他姓名
	private String otherPhone;// 其他电话
	private String caseType;//案件类型
	private Integer payAmountYet;//已还金额
	private Integer idCheckState;//身份信息核对状态（0：核对失败；1：核对成功；2：未核对）
	private BigDecimal repaymentPossibility;//还款可能性
	private Integer custType;//客户类型（1：A类客户；2：B类客户；3：C类客户；4：D类客户）
	private Integer isAnalysis;//是否已进行数据分析（0：未分析；1：已分析）
	private String brotherSisterName;//兄弟姐妹姓名
	private String brotherSisterPhone;//兄弟姐妹电话
	private String brotherSisterHomePhone;//兄弟姐妹家庭电话
	private String brotherSisterWorkPhone;//兄弟姐妹工作电话
	private String batchNo;//批次号
	private String idNo;// 身份证
	private String name;// 姓名
	private String address;// 住址
	private Integer jointly;//共债状态新增
	@ApiModelProperty(value = "合同号重复次数")
	private Integer repentNum;//合同号重复次数
	@ApiModelProperty(value = "组长审核状态（0：未通过；1：已通过）")
	private int checkState;


	//新增
	@ApiModelProperty(value = "资金渠道", example = "")
	private String fundChannel;

	@ApiModelProperty(value = "放款模式", example = "")
	private String lendingPatterns;

	@ApiModelProperty(value = "产品详细类型2", example = "")
	private String productTypeTwo;

	@ApiModelProperty(value = "产品详细类型3", example = "")
	private String productTypeThree;

	@ApiModelProperty(value = "其他类型", example = "")
	private String otherType;

	@ApiModelProperty(value = "贷款本金", example = "")
	private BigDecimal loansCapital;

	@ApiModelProperty(value = "逾期期数", example = "")
	private int overduePeriods;

	@ApiModelProperty(value = "逾期期数", example = "")
	private BigDecimal otherMoney;

	@ApiModelProperty(value = "利息", example = "")
	private BigDecimal interest;

	@ApiModelProperty(value = "违约金", example = "")
	private BigDecimal liquidatedDamages;

	@ApiModelProperty(value = "服务费", example = "")
	private BigDecimal serviceCharge;

	@ApiModelProperty(value = "逾期利息", example = "")
	private BigDecimal overdueInterest;

	@ApiModelProperty(value = "罚息", example = "")
	private BigDecimal penalSum;

	@ApiModelProperty(value = "费用", example = "")
	private BigDecimal cost;

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "最后一次还款日期", example = "")
	private Date lastRepaymentDate;

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
	@ApiModelProperty(value = "账单日")
	private Date accountantbilldate;

	@ApiModelProperty(value = "提前结清金额", example = "")
	private BigDecimal prepaymentMoney;

	@ApiModelProperty(value = "月还款金额", example = "")
	private BigDecimal monthRepaymentMoney;

	@ApiModelProperty(value = "详细户籍地址2", example = "")
	private String registerAddressTwo;

	@ApiModelProperty(value = "详细户籍地址3", example = "")
	private String  registerAddressThree;

	@ApiModelProperty(value = "详细户籍地址4", example = "")
	private String registerAddressFour;

	@ApiModelProperty(value = "详细户籍地址5", example = "")
	private String registerAddressFive;

	@ApiModelProperty(value = "详细居住地址2", example = "")
	private String liveAddressTwo;

	@ApiModelProperty(value = "详细居住地址3", example = "")
	private String liveAddressThree;

	@ApiModelProperty(value = "详细居住地址4", example = "")
	private String liveAddressFour;

	@ApiModelProperty(value = "详细居住地址5", example = "")
	private String liveAddressFive;

	@ApiModelProperty(value = "其他地址1", example = "")
	private String otherAddress;

	@ApiModelProperty(value = "其他地址2", example = "")
	private String otherAddressTwo;

	@ApiModelProperty(value = "客户家庭电话", example = "")
	private String clientFamilyPhone;

	@ApiModelProperty(value = "客户单位电话", example = "")
	private String clientUnitPhone;

	@ApiModelProperty(value = "客户其他电话1", example = "")
	private String clientOtherPhone;

	@ApiModelProperty(value = "客户其他电话2", example = "")
	private String clientOtherPhoneTwo;

	@ApiModelProperty(value = "客户其他电话3", example = "")
	private String clientOtherPhoneThree;

	@ApiModelProperty(value = "其他联系人名称2", example = "")
	private String otherLinkNameTwo;

	@ApiModelProperty(value = "其他联系人电话2", example = "")
	private String otherLinkPhoneTwo;

	@ApiModelProperty(value = "其他联系人名称3", example = "")
	private String otherLinkNameThree;

	@ApiModelProperty(value = "其他联系人电话3", example = "")
	private String otherLinkPhoneThree;

	@ApiModelProperty(value = "其他联系人名称4", example = "")
	private String otherLinkNameFour;

	@ApiModelProperty(value = "其他联系人电话4", example = "")
	private String otherLinkPhoneFour;

	@ApiModelProperty(value = "备注1", example = "")
	private String commentOne;

	@ApiModelProperty(value = "备注2", example = "")
	private String commentTwo;

	@ApiModelProperty(value = "总回款金额", example = "")
	private BigDecimal totalAmountCollected;

	@ApiModelProperty(value = "客服回款金额", example = "")
	private BigDecimal serviceTotalAmountCollected;
}
